#ifndef MESH_H
#define MESH_H

#include <map>
#include <vector>

class Mesh
{

public:

  void setNode( int _id, double _cX, double _cY, double _cZ );
  void setElem( int _id, int _nN, int* _pNodes );
  void setElem( int _id, int _nN, std::vector<int> _pNodes );
  void getBoundingBox( double& _minX, double& _maxX,
                       double& _minY, double& _maxY,
                       double& _minZ, double& _maxZ );
  std::map< int, std::vector<double> > getNodes();  
  std::map< int, std::vector<int> >    getElems();  

private:

  std::map< int, std::vector<double> > m_nodes;
  std::map< int, std::vector<int> >    m_elems;

};

#endif
